草庐IT

java - Flyway自动生成迁移SQL

全部标签

Ruby:自动加载方法有什么作用?

moduleActionControllerextendActiveSupport::Autoloadautoload:Baseautoload:Cachingautoload:Metalautoload:Middlewareend任何人都可以用示例/样本输出详细说明自动加载方法的作用吗? 最佳答案 Autoload确保在需要时自动加载类或模块。PeterCooper有一篇不错的文章,名为"RubyTechniquesRevealed:Autoload"这解释了需要的差异。我不想在这里重复他的例子:-)

ruby-on-rails - 在 Rails 4 迁移中设置自定义主键时出现问题

我使用postgresql9.3、Ruby2.0、Rails4.0.0。在阅读了很多有关在表上设置主键的问题后,我生成并添加了以下迁移:classCreateShareholders我还在我的模型中添加了self.primary_key="uid"。迁移成功运行,但是当我使用pgAdminIII连接到数据库时,我看到uid列未设置为主键。我错过了什么? 最佳答案 看看thisanswer.尝试执行“ALTERTABLEshareholdersADDPRIMARYKEY(uid);”,而不在create_tableblock中指定pr

ruby-on-rails - Ruby 自动删除临时文件?

我很困惑。这是我的代码:require'csv'require'tempfile'f=Tempfile.new('csv','/tmp')f.write'justwannatest'f.closepf.path如果我打开输出路径,它是空的。我认为这是因为每次ruby​​session退出时,TempFile都会自动从文件系统中删除。但是,我如何确切知道文件何时被删除?因为我想用它在我的Rails应用程序中创建临时文件,我担心文件在使用前是否被删除了。 最佳答案 来自文档:WhenaTempfileobjectisgarbagecol

ruby-on-rails - 如何生成 CSV 文件?

我正在尝试使用我的数据库中的数据生成CSV输出。我想将这些数据提供给第三方,所以我想象我会给某人一个URL(website.com/api_data/cars),通过访问此URL,此人将能够工作有了它-我想我想访问URL,然后(在操作中)查看显示的数据并用、或;分隔。但是怎么做呢?到目前为止,我正在尝试以下方法:csv_string=CSV.generatedo|csv|cols=["columnone","columntwo","columnthree"]csv'text/csv;charset=utf-8;header=present',:filename=>@filename)这

sql - 不同的加入 Rails

视频有很多事件我正在尝试获取所有在未来安排了事件的视频。我已经有了这个:named_scope:scheduled_in_future,:joins=>:event,:conditions=>["event.scheduled_start>?ANDevent.status=?",Time.now.to_i,'PENDING']这行得通,但如果同一个视频在未来有多个事件,它会给我重复的视频记录。当然,我可以遍历数组并清除重复项,但必须有一种SQL方法才能做到这一点。我尝试添加一个:select=>"DISTINCT(video.id)"但它只返回ID字段而不是整个记录。

ruby-on-rails - 在 html 字符串中自动链接 URL 和图像

你好,我有一个这样的字符串:"http://vimeo/2342343http://nerto.it/logo.pngtrytowritehttp://vimeo/2234923"我必须将它转换成这样的字符串:"http://vimeo/2342343trytowritehttp://vimeo/2234923"那么我如何获取每个元素并对其进行转换?谢谢 最佳答案 您可以使用auto-linkfunction将链接转换为实际的anchor标记。auto_link(text_to_convert)*注意:方法已弃用或移动此方法已弃用或

sql - 如何使用 Arel 正确地向带有 'or' 和 'and' 子句的 SQL 查询添加括号?

我正在使用RubyonRails3.2.2,我想生成以下SQL查询:SELECT`articles`.*FROM`articles`WHERE(`articles`.`user_id`=1OR`articles`.`status`='published'OR(`articles`.`status`='temp'AND`articles`.`user_id`IN(10,11,12,)))通过使用Arel这样Article.where(arel_table[:user_id].eq(1).or(arel_table[:status].eq("published")).or(arel_tab

sql - Rails 3 Sum 两个领域的产品

我需要计算我的Rails3应用中两个字段的乘积之和(即相当于Excel的sumproduct函数)。Rails中是否有一种方法可以帮助解决这个问题?如果没有,那么使用自定义sql的Rails代码是什么?例如,酒店有很多房间。房间具有sqft(平方英尺)、数量(该尺寸)和hotel_id的属性。我想计算给定酒店中所有房间的总平方英尺。在SQL中,对于Hotel.id=8,我相信以下语句会起作用:selectsum(rooms.sqft*rooms.quantity)asSumSqftfromroomsinnerjoinhotelsonrooms.hotel_id=hotels.idwhe

sql - 在 Rails 中进行计数的正确方法是什么?

我有一个包含以下许多代码片段的Rails应用程序:Ouractivecommunityof我的问题是,这是计算观看次数的正确方法吗?看起来很“肮脏”,有没有更粗鲁的方法来计算?我可能在考虑命名范围,但我只是想确保这些类型的东西不会对性能产生更大的影响。谢谢你, 最佳答案 您不需要名称范围来执行计数。Account.where(:admin=>false).count但是命名作用域是使您的代码更具可重用性的绝佳方式。命名范围不会对您的应用程序产生任何明显的性能影响。 关于sql-在Rail

ruby - 在 Ruby 中自动记录异常

是否有库或简单的方法来捕获Ruby程序中抛出的异常并将其记录到文件中?我看过log4r和logger,但是两者的文档都没有提供任何有关我将如何执行此操作的示例。我远程运行这个程序并丢失了stdout和stderr的句柄,如果这些信息有帮助的话。你会推荐什么? 最佳答案 如果你想在野外散步,试试这个:classExceptionaliasreal_initinitializedefinitialize(*args)real_init*args#logtheerror(self)oritsargshereendend这将在创建时拦截新异